package polytech.bda.model;

import java.util.List;

public class Trajet {
	private String villeDepart;
	private String villeArrivee;
	private List<String> listeVilles;
	private double distanceParcours;
	
	public Trajet(){
		
	}

	/**
	 * @param listeVilles
	 * @param distanceParcours
	 */
	public Trajet(List<String> listeVilles, double distanceParcours) {
		this.listeVilles = listeVilles;
		this.distanceParcours = distanceParcours;
	}

	/**
	 * @param depart
	 * @param arrivee
	 * @param distance
	 */
	public Trajet(String depart, String arrivee, double distance) {
		this.setVilleDepart(depart);
		this.setVilleArrivee(arrivee);
		this.distanceParcours = distance;
	}

	/**
	 * @param depart
	 * @param arrivee
	 * @param distance
	 */
	public Trajet(String depart, String arrivee, double distance,
			List<String> listeVilles) {
		this.setVilleDepart(depart);
		this.setVilleArrivee(arrivee);
		this.distanceParcours = distance;
		this.listeVilles = listeVilles;
	}

	/**
	 * @return the villeDepart
	 */
	public String getVilleDepart() {
		return villeDepart;
	}

	/**
	 * @param villeDepart
	 *            the villeDepart to set
	 */
	public void setVilleDepart(String villeDepart) {
		this.villeDepart = villeDepart;
	}

	/**
	 * @return the villeArrivee
	 */
	public String getVilleArrivee() {
		return villeArrivee;
	}

	/**
	 * @param villeArrivee
	 *            the villeArrivee to set
	 */
	public void setVilleArrivee(String villeArrivee) {
		this.villeArrivee = villeArrivee;
	}

	/**
	 * @return
	 */
	public List<String> getlisteVilles() {
		return listeVilles;
	}

	/**
	 * @return
	 */
	public List<String> getVillesIntermediaires() {
		return getlisteVilles();
	}

	/**
	 * @param ville
	 */
	public void addVilleIntermediaire(String ville) {
		this.listeVilles.add(ville);
	}

	/**
	 * @param listeVilles
	 */
	public void setlisteVilles(List<String> listeVilles) {
		this.listeVilles = listeVilles;
	}

	/**
	 * @return
	 */
	public double getDistanceParcours() {
		return distanceParcours;
	}

	/**
	 * @param distanceParcours
	 */
	public void setDistanceParcours(double distanceParcours) {
		this.distanceParcours = distanceParcours;
	}

	public String toString(){
		return "_"+this.villeDepart+"->"+villeArrivee+" : "+distanceParcours;
	}
}
